CodeIgniter-এ .htaccess ফাইল এবং Base URL কনফিগারেশন গুরুত্বপূর্ণ, কারণ এগুলো সঠিকভাবে কনফিগার না করলে অ্যাপ্লিকেশন সঠিকভাবে কাজ করতে পারে না। নিচে ধাপে ধাপে .htaccess এবং Base URL কনফিগারেশন প্রক্রিয়া দেখানো হয়েছে।
.htaccess কনফিগারেশন
CodeIgniter-এ .htaccess ফাইল ব্যবহার করা হয় URL রিরাইটিং এবং index.php সরিয়ে ফেলার জন্য। এটি Apache সার্ভারে কাজ করে এবং ডিফল্টভাবে ফ্রেমওয়ার্কের public/ ফোল্ডারে সংরক্ষিত থাকে।
.htaccess ফাইল তৈরি বা এডিট
- public/ ডিরেক্টরিতে একটি
.htaccessফাইল তৈরি করুন (যদি না থাকে)। নিচের কোডটি ফাইলটিতে যোগ করুন:
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / # Prevent access to system and writable folders RewriteRule ^(system|writable) index.php [F,L] # Remove index.php from URL RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php/$1 [L] </IfModule>
Apache মডিউল সক্রিয় করুন
আপনার সার্ভারে mod_rewrite মডিউল সক্রিয় আছে কিনা নিশ্চিত করুন। যদি সক্রিয় না থাকে:
- XAMPP-এ
httpd.confফাইল খুলুন। নিচের লাইনটি আনকমেন্ট করুন (যদি কমেন্ট করা থাকে):
LoadModule rewrite_module modules/mod_rewrite.so- Apache সার্ভার রিস্টার্ট করুন।
Base URL কনফিগারেশন
Base URL হলো অ্যাপ্লিকেশনের মূল URL। এটি সঠিকভাবে সেট না করলে বিভিন্ন রিসোর্স (CSS, JS, ইমেজ) লোড হতে পারে না এবং লিংক ঠিকমতো কাজ করবে না।
Base URL সেটআপ
app/Config/App.phpফাইলটি খুলুন।$baseURLপ্রপার্টি সঠিকভাবে কনফিগার করুন:public $baseURL = 'http://localhost/your_project_name/';যদি আপনি custom domain ব্যবহার করেন, তাহলে সেটি যোগ করুন:
public $baseURL = 'http://example.com/';
HTTPS ব্যবহার
যদি আপনার সার্ভার HTTPS সমর্থন করে, তাহলে Base URL এ http এর পরিবর্তে https ব্যবহার করুন:
public $baseURL = 'https://example.com/';
Common Issues এবং সমাধান
Issue: .htaccess কাজ করছে না
- সমাধান:
- Apache এর mod_rewrite মডিউল সক্রিয় আছে কিনা নিশ্চিত করুন।
AllowOverride Allসেটিং চেক করুন:Apache কনফিগারেশন ফাইলে (যেমন:
httpd.conf) নিম্নলিখিত পরিবর্তন করুন:<Directory "C:/xampp/htdocs"> AllowOverride All </Directory>
Issue: URL এ index.php দেখাচ্ছে
- সমাধান:
.htaccessফাইল সঠিকভাবে কাজ করছে কিনা চেক করুন।- Base URL সঠিকভাবে কনফিগার করুন।
উদাহরণ: .htaccess এবং Base URL একত্রে কাজ করা
ধরুন, আপনার প্রজেক্টের নাম my_project এবং আপনার সার্ভার localhost। তাহলে:
.htaccessফাইল:<IfModule mod_rewrite.c> RewriteEngine On RewriteBase /my_project/ RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php/$1 [L] </IfModule>app/Config/App.phpফাইলের$baseURL:public $baseURL = 'http://localhost/my_project/';
পরীক্ষার জন্য ব্রাউজারে চেক করুন
URL এর মাধ্যমে অ্যাপ্লিকেশন অ্যাক্সেস
ব্রাউজারে যান:
http://localhost/my_project/
index.php অপসারণ নিশ্চিতকরণ
লিংকে
index.phpথাকবে না, যেমন:http://localhost/my_project/controller/method
সঠিক .htaccess এবং Base URL কনফিগারেশনের মাধ্যমে CodeIgniter অ্যাপ্লিকেশন দ্রুত এবং নির্ভুলভাবে কাজ করবে।
Read more